<?php
declare(strict_types=1);

namespace App\Wxc\Service\Input;

use App\Wxc\Enums\MiniProgramStatus;
use Deepwell\Data\Data;
use Deepwell\Data\Optional;

class  SendMpMsgInput extends Data
{
    /**
     * 所需下发的订阅模板id。
     * @var string
     */
    public string $template_id;

    /**
     * 点击模板卡片后的跳转页面，仅限本小程序内的页面。支持带参数（示例index?foo=bar）。该字段不填则模板无跳转。
     */
    public string|Optional $page;

    /**
     * 接收者（用户）的openid。
     * @var string
     */
    public string $touser;

    /**
     * 模板内容，格式形如 { "key1": { "value": any }, "key2": { "value": any } } 的object。
     */
    public array $data;

    /**
     * 跳转小程序类型：developer为开发版；trial为体验版；formal为正式版；默认为正式版。
     */
    public MiniProgramStatus $miniprogram_state;

    /**
     * 进入小程序查看的语言类型，支持zh_CN(简体中文)、en_US(英文)、zh_HK(繁体中文)、zh_TW(繁体中文)，默认为zh_CN。
     * @var string
     */
    public string $lang = 'zh_CN';
}